-
Notifications
You must be signed in to change notification settings - Fork 742
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
XCM coretime region transfers #3455
Conversation
The benchmark for the coretime chain should be re-run since the weight is currently set to |
cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs
Outdated
Show resolved
Hide resolved
cumulus/parachains/runtimes/coretime/coretime-rococo/src/lib.rs
Outdated
Show resolved
Hide resolved
Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Review required! Latest push from author must always be reviewed |
Would be great if we could get this merged soon :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
e6f3106
@Szegoo @seadanda waiting here: #4396 (comment) |
Addressing comment: #3455 (comment) --------- Co-authored-by: command-bot <>
Addressing comment: #3455 (comment) --------- Co-authored-by: command-bot <>
Addressing comment: paritytech#3455 (comment) --------- Co-authored-by: command-bot <>
The problem with the current implementation is that minting will cause the region coremask to be set to `Coremask::complete` regardless of the actual coremask. This PR fixes that. More details about the nonfungible implementation can be found here: #3455 --------- Co-authored-by: Dónal Murray <donalm@seadanda.dev> Co-authored-by: Branislav Kontur <bkontur@gmail.com> Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com> Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Addressing comment: paritytech#3455 (comment) --------- Co-authored-by: command-bot <>
The problem with the current implementation is that minting will cause the region coremask to be set to `Coremask::complete` regardless of the actual coremask. This PR fixes that. More details about the nonfungible implementation can be found here: paritytech#3455 --------- Co-authored-by: Dónal Murray <donalm@seadanda.dev> Co-authored-by: Branislav Kontur <bkontur@gmail.com> Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com> Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
This PR introduces changes enabling the transfer of coretime regions via XCM.
TL;DR: There are two primary issues that are resolved in this PR:
mint
andburn
functions were not implemented for coretime regions. These operations are essential for moving assets to and from the XCM holding register.Weight::Max
, effectively preventing its execution.mint_into
andburn
implementationThis PR addresses the issue with cross-chain transferring regions back to the Coretime chain. Remote reserve transfers are performed by withdrawing and depositing the asset to and from the holding registry. This requires the asset to support burning and minting functionality.
This PR adds burning and minting; however, they work a bit differently than usual so that the associated region record is not lost when burning. Instead of removing all the data, burning will set the owner of the region to
None
, and when minting it back, it will set it to an actual value. So, when cross-chain transferring, withdrawing into the registry will remove the region from its original owner, and when depositing it from the registry, it will set its owner to another accountThis was originally implemented in this PR: #3455, however we decided to move all of it to this single PR (#3455 (comment))
Fixes made in this PR
XcmReserveTransferFilter
on coretime chain since it is meant as a reserve chain for coretime regions.AssetTransactor
instead of assumingpallet-balances
for fungible transfers.Weight::max()
.Closes: #865